1. Field of the Invention
This invention relates to testing software for keyboard accessibility.
2. Description of the Related Art
Section 508 of the Rehabilitation Act Amendments of 1998 mandates that United States government agencies provide people with disabilities access to electronic and information technology. The electronic and information technology includes any product used to acquire, store, manipulate, or transmit information. Software applications are considered electronic and information technology. Similarly, computer input devices, such as keyboards, also fall under the umbrella of electronic and information technology.
Many people with disabilities have problems using a computer-pointing device such as a “mouse.” These people need to be able to operate software using only a keyboard. Different types of keyboards are available to people with disabilities. For example, some keyboards have various curvatures and key configurations to enable people with wrist disabilities to enter keystrokes. Keyboard accessibility requires that computer functions be accessible using only keyboard strokes.
Companies that wish to sell electronic and information technology such as software to the government have to prove that the technology is keyboard accessible. Currently, the standard approach for testing for keyboard accessibility is through manual execution of the application. Specifically, multiple tests of the same software application function are run with alternate keyboards and “sticky key” mappings. The sticky key mappings are accessibility features that enable a person to only use one keystroke at a time when normally two or more are simultaneously required.
Many graphical user interface (GUI) testing applications (such as IBM's Rational Robot and XDE Tester) have record and playback functions. Keyboard entries and mouse clicks along with a resulting application response are recorded. From the recorded keyboard entries and mouse clicks, the testing applications generate program code referred to as “test scripts.” The test scripts may be run to simulate the previously recorded keyboard entries and mouse clicks. The resulting application responses may be played back and compared to previously recorded application responses.
Testing of alternate keyboards using the GUI testing applications still requires a specific test script for each of the alternate keyboards. This results in a significant amount of duplication within the test scripts and creates a maintenance problem for the tester.
Many computer software developers will recognize that the great variety of software applications, operating systems, and input devices can pose challenges. One challenge is the malfunction of the software applications due to unforeseen input devices. Accordingly, testing during the development process is required.
What are needed are software and hardware that automate certain aspects of testing software for keyboard accessibility.